package com.douglas.managesystem.service.admin;

import com.douglas.managesystem.common.SearchEntity;
import com.douglas.managesystem.entity.User;
import com.douglas.managesystem.vo.UserVO;
import com.github.pagehelper.PageInfo;

/**
 * 用户接口
 * @author douglas
 */
public interface UserService {

    /**
     * 1.用户查询
     * @param user
     * @return
     */
    UserVO loginUser(UserVO user);

    /**
     * 2.分页查询用户
     * @param params
     * @return
     */
    PageInfo<User> queryListByPage(SearchEntity params);

    /**
     * 3.新增用户
     * @param user
     */
    void addUser(User user);

    /**
     * 4.根据id查询用户
     * @param id
     * @return
     */
    User queryUserById(String id);

    /**
     * 5.更新用户
     * @param user
     */
    void updateUser(User user);

    /**
     * 6.删除用户
     * @param id
     */
    void deleteUser(String id);

    /**
     * 7.根据用户名查询用户
     * @param username
     * @return
     */
    User findUserByUsername(String username);

    /**
     * 8.更新密码
     * @param userDb
     */
    void updatePassword(User userDb);
}
